/*
@file	Circle.h
@author	Saume
*/

#ifndef CIRCLE_H
#define CIRCLE_H

#include "Polygon.h"

class Circle;
class CustomRectangle;
bool operator==(const Circle&, const Circle&);

class Circle: public Polygon {
protected: 
	float radius;
public: 
	Circle();
	Circle(float, float, float);
	Circle(const Vector* const, const float);
	bool Contains(float, float) const;
	bool Contains(const Vector* const) const;
	float GetRadius() const;
	float GetRadiusSq() const;
	bool CollidesWith(const Circle* const) const;
	bool CollidesWith(const CustomRectangle* const) const;
	float SqDistanceWith(float, float) const;
	float SqDistanceWith(const Vector* const) const;
	void Display() const;
};

#endif